#include <iostream>

using namespace std;

bool isUglyNumber(int n) {
  /*
  递归算法的两个要素：
  1. 终止条件
  2. 递归过程
  */
  // 1, 2, 3, 4, 5, 6 只要 n 大于 0 小于 7，n 都是丑数
  if (n <= 0) { return false; }
  if (n < 7) { return true; }

  // 递归过程
  // 只要能被 2 整除，就一直除下去
  // 只要能被 3 整除，就一直除下去
  // 只要能被 5 整除，就一直除下去

  if (n % 2 == 0) {
    return isUglyNumber(n / 2);
  }

  if (n % 3 == 0) {
    return isUglyNumber(n / 3);
  }

  if (n % 5 == 0) {
    return isUglyNumber(n / 5);
  }

  return false;
}

int main(int argc, char const *argv[])
{
  /* code */
  return 0;
}
